/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.core;

import com.entidades.Campanha;
import com.entidades.Pacote;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Ricardo
 */
public class FilaPacote {

    private static FilaPacote instance;
    private List<Pacote> fila;

    private FilaPacote() {
    }

    public synchronized Integer size() {
        return fila.size();
    }

    public static FilaPacote getInstance() {
        if (instance == null) {
            instance = new FilaPacote();
            instance.fila = new ArrayList<Pacote>();
        }

        return instance;
    }

    public synchronized Pacote removePacoteParaEnvio() {
        Pacote p = null;
        if (fila.size() > 0) {
            p = fila.get(0);
            fila.remove(p);
        }
        return p;
    }

    public synchronized void adicionar(Pacote pacote) {
        this.fila.add(pacote);
    }

    public synchronized void limpaLista() {
        fila.clear();
    }

    public int getSizeFila() {
        System.out.println("@@@@@@@@@@@@@@@@@");
        System.out.println("@@@");
        System.out.println("@@@");
        System.out.println("@@@ tamanho fila: " + fila.size());
        System.out.println("@@@");
        System.out.println("@@@");
        System.out.println("@@@@@@@@@@@@@@@@@");

        return fila.size();
    }
}
